A nonvolatile memory can include an array of memory cells. Each of the memory cells can have multiple resistive states. Certain nonvolatile memories (referred to herein as “resistive memories”), such as phase change random access memory (PCRAM), resistive random access memory (RRAM), and magnetic random access memory (MRAM), include memory cells with respective resistances. Each of the resistances changes based on the state of the corresponding memory cell. For example, a memory cell can have a first (or low) resistive state when storing a ‘0’ and a second (or high) resistive state when storing a ‘1’.
As a first example, in order to determine a resistive state of a memory cell, a voltage can be applied across the resistance of the memory cell. A current through the resistance can then be detected and is indicative of the resistive state. Based on the detected current, the resistive state of the memory cell is determined. As another example, a current can be supplied to the resistance of the memory cell. A voltage across the resistance can then be detected and is indicative of the resistive state. The resistive state of the memory cell can then be determined based on the detected voltage.